小编典典

如何为 MVC-3-converted-to-4 应用添加对 System.Web.Optimization 的引用

all

我正在尝试在我最近从 MVC 3 转换为 MVC 4 beta 的项目中使用新的捆绑功能。它需要 global.asax
中的一行代码BundleTable.Bundles.RegisterTemplateBundles();,它需要usingSystem.Web.Optimization;在顶部。

当我这样做时,我会看到红色的波浪线,上面写着“您是否缺少程序集引用?” 当我尝试添加引用并单击对话框中的 .NET 选项卡时,从 AZ
排序,我没有看到System.Web.Optimization.

如何将此引用添加到我的项目中?


阅读 167

收藏
2022-03-15

共1个答案

小编典典

更新
版本 1.1.x 可用,请阅读发行说明:https://www.nuget.org/packages/Microsoft.AspNet.Web.Optimization


Microsoft.Web.Optimization 包现已过时。使用 ASP.NET (MVC) 4 及更高版本,您应该安装 Microsoft
ASP.NET Web 优化框架:

  • nuget安装包:

    Install-Package Microsoft.AspNet.Web.Optimization
    
  • 在 App_Start\BundleConfig.cs 中创建和配置包:

    public class BundleConfig
    

    {
    public static void RegisterBundles(BundleCollection bundles) {
    bundles.Add(new ScriptBundle(“~/Scripts/jquery”).Include(
    “~/Scripts/Lib/jquery/jquery-{version}.js”,
    “~/Scripts/Lib/jquery/jquery.*”,
    “~/Scripts/Lib/jquery/jquery-ui-{version}.js”)
    );

        bundles.Add(new ScriptBundle("~/Scripts/knockout").Include(
             "~/Scripts/Lib/knockout/knockout-{version}.js",
             "~/Scripts/Lib/knockout/knockout-deferred-updates.js")
        );
    }
    

    }

  • 从 global.asax.cs 中的 Application_Start() 调用 RegisterBundles() 函数:

    using System.Web.Optimization;
    

    protected void Application_Start() {

    BundleConfig.RegisterBundles(BundleTable.Bundles);

    }

  • 在您的 view.cshtml 中包含优化命名空间并呈现包:

    @using System.Web.Optimization
    

    @Scripts.Render(“~/Scripts/jquery”)
    @Scripts.Render(“~/Scripts/knockout”)

有关详细信息,请参阅http://www.asp.net/mvc/overview/performance/bundling-and-
minification

2022-03-15